Skip to content

fix: Call quoteSend through proxy (DEV-1231)#243

Merged
lucas-manuel merged 2 commits intodevfrom
dev-1231-lz
Feb 11, 2026
Merged

fix: Call quoteSend through proxy (DEV-1231)#243
lucas-manuel merged 2 commits intodevfrom
dev-1231-lz

Conversation

@supercontracts
Copy link
Collaborator

@supercontracts supercontracts commented Feb 10, 2026

Summary by CodeRabbit

  • Refactor
    • Modified fee retrieval mechanism to use a proxy-mediated approach for messaging fee data, while maintaining existing control flow and functionality.

@notion-workspace
Copy link

@octane-security-app
Copy link

Summary by Octane

New Contracts

No new contracts were added.

Updated Contracts

  • LayerZeroLib.sol: Modified quoting mechanism for messaging fee by utilizing proxy.doCall for dynamic execution.

🔗 Commit Hash: 948552a

@coderabbitai
Copy link

coderabbitai bot commented Feb 10, 2026

Important

Review skipped

Auto incremental reviews are disabled on this repository.

Please check the settings in the CodeRabbit UI or the .coderabbit.yaml file in this repository. To trigger a single review, invoke the @coderabbitai review command.

You can disable this status message by setting the reviews.review_status to false in the CodeRabbit configuration file.

Use the checkbox below for a quick retry:

  • 🔍 Trigger review

Walkthrough

The code modifies LayerZeroLib.sol to change how messaging fees are obtained. Instead of calling quoteSend directly on the ILayerZero interface, the contract now invokes proxy.doCall and decodes the MessagingFee from the response. The downstream logic using fee.nativeFee remains unchanged.

Changes

Cohort / File(s) Summary
LayerZero Fee Quote Retrieval
src/libraries/LayerZeroLib.sol
Changed fee acquisition from direct quoteSend call to proxy-mediated pattern: MessagingFee is now decoded from proxy.doCall response instead of direct interface invocation. Subsequent fee usage logic unchanged.

Estimated code review effort

🎯 2 (Simple) | ⏱️ ~10 minutes

Possibly related PRs

  • refactor: LayerZero #216 — Both PRs modify LayerZeroLib.sol; the earlier PR introduces the transferTokenLayerZero flow that this PR's fee-quote changes likely support.
  • fix: Get quote from ALM Proxy (DEV-1141) #230 — Both PRs modify LayerZeroLib.sol to replace direct LayerZero quote calls with proxy.doCall and abi.decode pattern for fee retrieval.

Suggested reviewers

  • deluca-mike
  • lucas-manuel

Poem

🐰 A proxy hops where quoteSends once trod,
Decoding fees with abi's gentle rod,
The flow remains unchanged, yet through indirection,
We reach our MessagingFee with fresh perfection! ✨

🚥 Pre-merge checks | ✅ 3
✅ Passed checks (3 passed)
Check name Status Explanation
Description Check ✅ Passed Check skipped - CodeRabbit’s high-level summary is enabled.
Title check ✅ Passed The title clearly and concisely describes the main change: calling quoteSend through a proxy instead of directly, and includes the JIRA ticket reference (DEV-1231).
Docstring Coverage ✅ Passed No functions found in the changed files to evaluate docstring coverage. Skipping docstring coverage check.

✏️ Tip: You can configure your own custom pre-merge checks in the settings.

✨ Finishing touches
🧪 Generate unit tests (beta)
  • Create PR with unit tests
  • Post copyable unit tests in a comment
  • Commit unit tests in branch dev-1231-lz

Comment @coderabbitai help to get the list of available commands and usage tips.

@octane-security-app
Copy link

Overview

Octane AI analysis has finished. No vulnerabilities were found. Cheers! 🎉🎉🎉


🔗 Commit Hash: 948552a

@github-actions
Copy link

Coverage after merging dev-1231-lz into dev will be

99.30%

Coverage Report
FileStmtsBranchesFuncsLinesUncovered Lines
deploy
   ControllerDeploy.sol100%100%100%100%
   ForeignControllerInit.sol100%100%100%100%
   MainnetControllerInit.sol97.37%93.33%100%100%152, 90
src
   ALMProxy.sol100%100%100%100%
   ALMProxyFreezable.sol100%100%100%100%
   ForeignController.sol96.10%89.66%95.65%98.04%130–131, 131, 131, 556
   MainnetController.sol99.20%100%98.39%99.25%614–615
   OTCBuffer.sol92.31%100%83.33%93.75%55
   RateLimitHelpers.sol100%100%100%100%
   RateLimits.sol100%100%100%100%
   WEETHModule.sol93.18%90%85.71%96.30%65, 72
src/libraries
   AaveLib.sol100%100%100%100%
   ApproveLib.sol100%100%100%100%
   CCTPLib.sol100%100%100%100%
   CurveLib.sol100%100%100%100%
   ERC4626Lib.sol97.06%90%100%100%117
   LayerZeroLib.sol100%100%100%100%
   PSMLib.sol100%100%100%100%
   UniswapV4Lib.sol99.33%95.65%100%100%282
   WEETHLib.sol100%100%100%100%

@lucas-manuel lucas-manuel merged commit bd6f42b into dev Feb 11, 2026
4 checks passed
@lucas-manuel lucas-manuel deleted the dev-1231-lz branch February 11, 2026 18:55
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants